Computer system for creating and playing location aware games

ABSTRACT

Computer system for creating and playing location aware games. The creation process allows for authoring of custom location aware games, training aids, tours and scavenger hunts using a mobile computing device and map. The resulting game can be played using a mobile computing device and location receiver (e.g. GPS receiver).

BACKGROUND OF THE INVENTION—FIELD OF INVENTION

The present invention relates to systems, processes and methods that useGPS and small computing devices to create utility or entertainmentvalue.

BACKGROUND OF THE INVENTION—PRIOR ART

The availability of small computing devices using increasingly accuratelocation receivers is boosting the popularity of location aware systems.In the context of this invention, a system becomes location awareobtaining coordinates from a location receiver. Global PositioningSystem (GPS) receivers, Differential GPS (DGPS) receivers and somewireless networks provide these systems with location coordinates. Smallcomputing devices include personal digital assistants (PDA), PocketPC's, Smart Phones and some pagers.

A category of location aware systems help users find their way relyingon GPS, maps and navigation software. For such navigation systems, auser enters an address and is guided to that destination. Being locationaware, the system can show the user in the context of a map: currentlocation, where to go and past movements.

Navigation systems are sometimes coupled with databases of knownmunicipal sites, landmarks and places of commerce. Said databases allowusers to find places of interest near their location. Conversely, placesof interest are also used as destinations.

Navigation systems provide useful directions from point A to point B andillustrate known places of interest. However, using these systems, onecannot personalize the journey. That is, using these systems, one cannotpersonally annotate the map with location specific ad-hoc virtualeffects that get triggered as one uses the map. In the context of thisinvention, location specific ad-hoc virtual effects are locationspecific because they are tied to an actual location and correspondingpoint on a map. The effects are ad hoc because they are created at thediscretion of the annotator or author of the personalized map. Theeffects are virtual because they are real only in the context of thepersonalized map. Finally, they are effects because their existencetriggers a desired result. For example, a personalized map author maywant to create a specialized map giving directions to his house. Thespecialized map could include video display or audio narration effectsthat are triggered when passing by places of interest. The places ofinterest may be trivial to the general public but have meaning tospecific audiences. For example, a grandfather, giving his grandchildrendirections to his house, might want to point out his first girlfriend'shouse or the tree that he hit while learning how to drive. The effectsfor these personal places of interest could include a picture of thegirlfriend or wrecked car and an audio narration of the place andpicture's significance.

U.S. Pat. No. 5,364,093 to Huston and U.S. Pat. No. 6,525,690 to Rudowintroduce location aware systems used to enhance a game of golf. Likenavigation systems, these systems show users in the context of a map, inthis case a golf course. A unique and helpful aspect of these golfsystems is the definition of zones and their use driving the player'sdisplay. Zones are geographic areas defined by bounds. The areassurrounding a golf tee or areas surrounding a putting green are zones.To define a zone, one needs to know the horizontal borders (latitude)and the vertical borders (longitude). Once entering a zone, theapplication triggers helpful hints within the context of the player'slocation. For example, entering a tee zone triggers the system todisplay a picture of the hole, distance to hazards and strategies forplaying.

Like the navigation systems, the golf systems do not allow individualsto create personalized location aware experiences. For example, a Fridayafternoon golfing league might want to annotate a golf course withentertaining challenges that change each week. A possible challenge fora certain outing could have the golfers watch a video of a famous golfergetting out of a treacherous sand trap. The challenge would be toimitate the shot and try to better the famous golfer's result. Thisvirtual effect, the video and instructions, would be triggered as thegolfers entered a zone marking the bounds around the trap area. That is,the challenge would be triggered as they approached the trap.

US Patent Application 20050049022 to Mullen introduces the creation oflocation aware games given a location. This application is limited inthat the game makes no consideration for parks or streets within thegame area. The PACS in PACMAN referenced in the application shouldfollow a street or path within a park. This can only be done if the gamecreator is allowed to personally annotate the Gameboard.

U.S. Pat. No. 6,691,032 to Irish introduces a process and method forcreating and executing user-definable events triggered through locationdata describing zones of influence. Using the invention, one couldcreate an annotated golf course and annotated maps as previouslydescribed. However, Irish's invention does not allow for the easycreation of these games.

Irish's invention requires a game creation sub process before the gameloop is executed. The creation sub process is named “Define GlobalCartridge Settings” and includes the following steps and sub stepsallowing for the detailed specification of game personalization:

-   Define zones of influence-   Define items-   Define events-   Define non-player characters-   Compile cartridge

Within these steps, users define attributes, conditions and eventsallowing flexibility in Irish's invention. This flexibility also adds tothe complexity involved in creating a personalized experience. Withinthe patent, Irish's example application is written in a third generationprogramming language to allow the user to express the conditional logicand events required to create the experience. Within the “Define GlobalCartridge Settings” process, this source code is compiled into acartridge before it can be executed. It is the principle object of thisinvention to disclose a computer system that hides this complexitymaking it easier to create and play personalized location awareexperiences.

BACKGROUND OF THE INVENTION—OBJECT AND ADVANTAGES

Another approach to the same problem addressed in Irish's invention isto split game creation and playing into three sub processes. FIG. 1illustrates three sub processes comprising this invention. The first twosub processes allow for game creation. The first sub process, DevelopToolset (1 a), involves the creation and compilation of a computersystem that contains the complexity of a location independent,functionally specific game type. In this step, Virtual Effects aredefined with behavior traits and without location. To implement theDevelop Toolset computer system, a programming language is required toexpress the complexity of conditional logic and events.

The second sub process, Author Gameboard (1 b), uses the resultingToolset and a map to create and annotate a location specific instance ofthe game. Within the context of this invention, the output of the secondprocess is called a Gameboard. To author a Gameboard the Toolset's predefined Virtual Effects are selected and placed on the Gameboard. Ifneeded, the Virtual Effect's attributes are changed. The AuthorGameboard step is unique and easier than Irish's game creation process.Within this invention, for this sub process, user-definable events andconditional logic are not defined.

Because of its simplicity, the Toolset can be used en mass: Gameboardsare easily authored and interpreted. That is, once one golf courseToolset is created, an unlimited number of golf courses could bepersonalized with the Toolset's pre defined Virtual Effects. Toolsetscan also be created capturing the logic of a game, training aid, tour orscavenger hunt.

SUMMARY

The present invention allows for the annotation and interpretation ofVirtual Effects on a map. Applied in the intent of the invention'sprimary embodiment, the invention facilitates a simple creation ofcustom location aware games, training aids, tours and scavenger huntsusing a mobile computing device and map. The interpretation processallows the same to be played or experienced using a mobile computingdevice and location receiver (e.g. GPS receiver).

This invention allows for the implementation of a new type of game: onewhere players experience a virtual reality interacting with VirtualEffects within their own neighborhoods. Compared to traditional computergames, these games will promote imagination and active rather thansedentary entertainment ultimately promoting more healthy lifestyles.

Glossary: Definition List 1 Term Definition Gameboard A virtualplayfield corresponding to an actual playfield. The Gameboard has a mapand geographical boundaries corresponding to the actual playfield. TheGameboard also contains one or more Virtual Effects. Gameboard Part of aToolset allowing a user to author and edit a game Editor consisting of aGameboard and associated Virtual Effects. Gameboard Part of a Toolsetallowing a user to play a user defined Interpreter game consisting of apreviously defined Gameboard and Virtual Effects. InstantiationProgramming term for allocating memory on computing device for objectused within computing system or method. Sidewalk A child's game andexample application of this invention. Squirrel © Toolset A computersystem containing a Gameboard Editor and Gameboard Interpreter. ToolsetA software developer creating an application of this Creator invention.Toolset User An individual who either authors or interprets a Gameboard.Virtual An effect having appearance, size, audio and interaction Effectrules that is virtual because it is real only in the context of aGameboard.

DRAWINGS

FIG. 1—Toolset Creation and Use

FIG. 2.1 —Toolset Class Diagram

FIG. 2.2—Virtual Effect Sub Types Class Diagram

FIG. 3—Gameboard XML Document

FIG. 4—Virtual Effect Default Images

FIG. 5—Create Toolset Process

FIG. 6—Toolset User Processes

FIG. 7—Author Gameboard Process

FIG. 8—Initialize Gameboard Process

FIG. 9—Acquire External Map Process

FIG. 10—Multiple Map Image Example

FIG. 11—Add and Edit Virtual Effect Process

FIG. 12—Gameboard Control During Author Gameboard Process

FIG. 13—Set Virtual Effect Attributes

FIG. 14—Flow of the Gameboard Interpreter

FIG. 15—Gameboard Control during Interpret Gameboard Process

FIG. 16—Play Game Process

FIG. 17—Toolset, GPS receiver, GPS receiver interface, mappinginterface, Internet and network interface contained in a small computingdevice

FIG. 18—Additional Embodiment with Multiple Players

DETAILED DESCRIPTION

This invention defines a computer system for annotating and interpretingpredefined, location specific Virtual Effects onto a map. The annotationprocess allows for the simple creation and editing of custom locationaware games, training aids, tours and scavenger hunts using a mobilecomputing device and map. The interpretation process allows same to beplayed or experienced using a mobile computing device and locationreceiver (e.g. GPS receiver).

FIG. 1 illustrates this invention's high level process. In the first subprocess (1 a) a Toolset consisting of a Gameboard Editor, GameboardInterpreter, Gameboard Control, Game, Virtual Effects and othersupporting constructs is created and compiled. The second sub process (1b), Author Gameboard, uses the Gameboard Editor of the Toolset to createand annotate a virtual Gameboard. Once created, the Gameboard can besaved and played repeatedly using the Gameboard Interpreter (1 c). Inthe context of this invention, the toolset is created by a ToolsetCreator. The Toolset Creator is typically one or many softwaredevelopers. The next two steps are executed by Toolset Users. ToolsetUsers are application users who are not required to have programmingskills. There are two types of Toolset Users: a Gameboard Author whocreates the Gameboard and a Gameboard Player who plays the resultinggame. During the Interpret Gameboard step, the Game becomes locationaware using a location receiver to obtain coordinates of the GameboardPlayer. The Gameboard Player's coordinates are used by the GameboardInterpreter to place the Player into the virtual Gameboard and allowinteraction with Virtual Effects.

To aid the reader of this patent application, nouns representing newconcepts within this invention are capitalized. For example, GameboardEditor, Gameboard and Virtual Effect are capitalized. A map image isused within this invention but it is not a new concept and notcapitalized.

The process and method defined in this invention allows for manydifferent Toolsets or types of games. An example Toolset, SidewalkSquirrel© from Sneaker Entertainment©, is used throughout this patentapplication to demonstrate the invention. To play Sidewalk Squirrel©,the Gameboard Author annotates a Gameboard with predefined VirtualEffects representing acorns, bones, dogs and other items. The GameboardPlayer using a GPS device is represented within the game as a squirrel.Playing Sidewalk Squirrel©, the Gameboard Player (the squirrel) collectsthe Gameboard's acorns and bones for points while avoiding oreliminating attacking dogs.

The detailed description section of this patent documents this inventionfrom three perspectives: Toolset, Author Gameboard and InterpretGameboard. The Toolset section defines the constructs used within theinvention while the Author and Interpret Gameboard sections introducethe processes that use the constructs. Other Embodiments is presented asthe final section.

DETAILED DESCRIPTION—TOOLSET

FIG. 2.1 illustrates a simplified implementation of the Toolsetrepresented as a class diagram. The legend to FIG. 2.1 (FIG. 2.1 Legend)defines the three sections of the class description: Class Name,Attributes and Methods. Within the Toolset, the Gameboard Editor (2.1 a)and Gameboard Interpreter (2.1 g) are responsible for the AuthorGameboard and Interpret Gameboard processes respectively. To launchthese processes, the Gameboard Editor has methods (2.1 c) to create anew Gameboard, open an existing Gameboard and save a Gameboard. TheGameboard Interpreter has a similar open Gameboard method. The GameboardInterpreter also has methods for playing, pausing and stopping the game(2.1 i). Both of these constructs have references to (2.1 b, 2.1 h) andrely on the Gameboard Control (2.1 d) to visually represent theGameboard (2.1 m) itself. As such, the Gameboard Control has a reference(2.1 e) to the Gameboard and methods to paint the Gameboard image and tozoom and scroll (2.1 f). A collection of Virtual Effects (2.1 s) ismanaged by the Gameboard. Similar to the Gameboard Control's function,Virtual Effect Controls (2.1 j) represent the physical properties ofVirtual Effects. Like the Gameboard Control, Virtual Effect Controlshave references to their respective Virtual Effects (2.1 k) and a methodto paint the image (2.1l). Within the Paint Gameboard method (2.1 f) ofthe Gameboard Control, after the map image is presented on the physicaldevice display, each of the referenced Virtual Effect Controls (2.1 e)is required to do the same.

Different hardware platforms require different implementations to driverespective hardware components. In the art, to keep a separation betweenplatform independent components and platform specific components,functionality is sometimes split into two classes. Within FIG. 2.1,Gameboard Control (2.1 d) and Virtual Effect Control (2.1 j) representplatform specific implementations of the Gameboard and Virtual Effectrespectively. As such, these classes are optional. Platform specificinstructions within the Gameboard and Virtual Effect could beimplemented in the Gameboard and Virtual Effect classes.

In detail, a Gameboard (2.1 m) consists of (2.1 n) an address, a gamearea center location represented as longitude and latitude, north-eastand south-west bounding coordinates represented as longitude andlatitude, a game area size represented as a length and width, a defaultscale representing a ratio of real world measurements to that of a mapimage, a collection of Virtual Effects (2.1 s) and a collection ofGameboard Maps (2.1 p) each with a map image and scale (2.1 q).

In detail, a Virtual Effect (2.1 s) consists of a list of images, a listof audio files a size represented as a length and width, a location (2.1t) and four methods defining the Virtual Effect's behavior: movement,interaction, appearance and audio (2.1 u). To create different effectsfor different games, the four methods are overridden within VirtualEffect subtypes (2.2 d, 2.2 g, 2.2 j). For example, the audio trait ofthe dog (2.2 g) Virtual Effect is repetitive barking. The prize VirtualEffect (2.2 d) is silent until it is acquired where it “dings”. Sinceboth the prize and dog are sub classes of Virtual Effect, they aretreated exactly the same by the Author Gameboard and Interpret Gameboardprocesses. In the art, this technique is called polymorphism.Polymorphism allows the Author Gameboard and Interpret Gameboardprocesses to work regardless of the detailed behavior traits of theVirtual Effects which in turn allows the creation of many Toolsets orgame types under this invention's process and method. It is theresponsibility of the Game Creator to ensure that all Virtual Effectsubclasses (2.2 a) implement all necessary methods so that the game canbe edited and interpreted.

Within Sidewalk Squirrel©, the dog Virtual Effect attacks the Player(the squirrel). To characterize the dog's movement, the Virtual Effectimages capture different positions of a running dog. Within the movementmethod, the dog's speed attribute (2.2 f) is used to calculate theVirtual Effect's next location. Over time, using speed and a rotatingimage, the dog's movement behavior is represented.

Similar to the dog's movement method, the audio method uses the list ofaudio files to represent an excited, barking dog. To make the barkingrealistic, the audio files are rotated at random. The effect is sporadicbarking of different volumes and pitches similar to that of an attackingdog.

Virtual Effects also have a size and location used for intersectiondetection (2.1 t). Within the Sidewalk Squirrel©, size is represented asa length and width of pixels corresponding to the size of the VirtualEffect's image. Virtual Effect location is represented in longitude andlatitude. Described in prior art terms, each Virtual Effect representslocation independent zones that have self contained conditional logicthat trigger effects. Virtual Effects stay location independent untilused in the Author Gameboard process where they are assigned actuallocations.

FIG. 4 illustrates the appearance of 6 types of Virtual Effects usedwithin Sidewalk Squirrel©: acorn (4 a), bone (4 b), finish line (4 c),stop sign (4 d), dog (4 e) and squirrel (4 f). Within FIG. 3, acorns,bones, the finish line and stop sign are prizes of different types (2.2b, 2.2 c). The dog (2.2 e) and player (2.2 h) are named accordingly.

Within Sidewalk Squirrel©, the Virtual Effect types and behavior traitsare as follows:

-   -   Acorn        -   Immobile        -   Intersection with Player awards points        -   Acorn appearance determined from Prize Type attribute (2.2            c) and doesn't change        -   until intersection, then Acorn disappears        -   A “ding” sound is triggered by an intersection with Player    -   Bone        -   Immobile        -   Intersection gives Player Bone and awards points to Player        -   Bone appearance determined from Prize Type attribute (2.2 c)            and doesn't change until intersection, then Bone disappears        -   A “ding” sound is triggered by an intersection with Player    -   Dog        -   Moves towards Player at designated speed (2.2 f)        -   Intersection removes one life from Squirrel unless Bone is            given to dog prior to intersection. Loss of all lives ends            game.        -   Running appearance simulated by changing stride images        -   Dog barks while chasing Player and gulps when receiving Bone    -   Stop sign        -   Immobile        -   Intersection with Player suspends game until Player leaves            stop area        -   Stop sign appearance determined from Prize Type attribute            (2.2 c) and never changes        -   No audio    -   Finish line        -   Immobile        -   Intersection with Player awards point and ends game        -   Finish line appearance determined from Prize Type attribute            (2.2 c) and never changes        -   Intersection with Player triggers applause    -   Squirrel        -   Moves in accordance to coordinates taken from GPS device        -   Interactions defined within other Virtual Effects        -   Appearance changes when Dog nears and when Dog intersects        -   Dog intersection triggers “ouch” sound and subtracts from            Lives attribute (2.2 i).        -   Prize intersection adds to Score attribute (2.2 i).

Gameboard (2.1 m), Gameboard Map (2.1 p) and Virtual Effect (2.1 s) eachhave methods for saving XML and reading from XML (2.1 o, 2.1 r, 2.1 u)allowing the Gameboard to be persisted, edited and interpreted whendesired. XML is an acronym for extensible markup language and isfrequently used in the art for persistence and process interaction. FIG.3 represents a Gameboard XML document created by a Sidewalk Squirrel©Toolset. To create the document, the Gameboard's ToXML method (2.1 o) iscalled from Gameboard Editor's Save Gameboard method (2.1 c) which iscalled within the Author Gameboard process (7 e). The Gameboard's ToXMLmethod creates sections of XML (3 a through 3 e) corresponding to theattributes managed by the Gameboard (2.1 n). The Gameboard's ToXMLprocess then iterates through the Gameboard Maps and Virtual Effectscalling their respective ToXML methods (2.1 r, 2.1 u) to create theircorresponding XML sections (3 f and 3 g through 3 j). The FromXMLmethods are similar to the ToXML methods except that the XML is readrather than written. The FromXML method within the Gameboard (2.1 o) iscalled from the Initialize Gameboard process (8 a) in both the AuthorGameboard (7 a) and Interpret Gameboard (14 a) processes.

Following the same polymorphic technique as the behavior trait methods,Virtual Effect subtypes override their parent's persistence methods (2.2d, 2.2 g, 2.2 j) writing and reading different XML sections for eachsubtype (3 g through 3 j). This allows the dog XML segment (3 i) to havea speed attribute corresponding to the speed attribute in the dogVirtual Effect subtype (2.2 f).

As Virtual Effects define the Toolset's personality through theirbehavior methods, the Gameboard Control manages the Toolset's game leveltraits through specialized displays. Sidewalk Squirrel© is a simple gamewhere points are won and lives are lost. To implement this behavior, theGameboard Control manages a score board that displays score andremaining lives. Other embodiments may require different game leveldisplays. For example, a scavenger hunt Toolset may require a display ofelapsed time or time remaining in game.

During Gameboard Interpretation three additional constructs are used: aGame (2.1 v), a timer and a location receiver. During interpretation,the timer is used to set the cadence of the game. The timer is also themechanism used to start, stop and pause the game. During interpretation,the location receiver provides coordinates to the Toolset allowing thegame to become location aware. The Game (2.1 v) manages references tothe timer and location receiver (2.1 w). As such, the Game construct isoptional. That is, the references can me managed within the Gameboard orGameboard Interpreter.

Similar to the Game, the Player Virtual Effect (2.2 h) is onlyinstantiated during Gameboard Interpretation. Within Sidewalk Squirrel©,the Player holds score and lives attributes (2.2 i). Similar to otherVirtual Effects, the Player has methods that define behavior traits (2.2j). However, since the Game and Player Virtual Effect are not part ofthe Gameboard itself, these objects are not required to be persisted orrepresented as XML. Other embodiments of the Toolset will change thisimplementation. For example, a multiple player Toolset requires an XMLrepresentation to communicate Game and Player attributes betweenPlayers.

For any implementation, this invention requires but does not include aprocess for handling events, interfacing with device drivers or managingtime. Sidewalk Squirrel© uses Microsoft's© Compact Framework© to handlethese tasks. The Acquire External Map and location receiver also requireexternal processes which will be introduced in a later DetailedDescription section.

FIG. 5 illustrates the Create Toolset process. In this process, VirtualEffects (5 a) are created and the Gameboard Control (5 b) is altered torepresent the Toolset theme. With any embodiment, the Toolset,consisting of a Gameboard Editor, Gameboard Interpreter, GameboardControl, Game, Virtual Effects and supporting external processes iscompiled into an executable (5 c) which can be distributed en mass (5d). The compiled Toolset executable will be used by the Gameboard Authorfor Gameboard Authoring and used by the Gameboard Player for GameboardInterpretation.

DETAILED DESCRIPTION—AUTHOR GAMEBOARD

FIG. 6 illustrates the high level processes of a Toolset User. After theToolset is Acquired (6 a), the Toolset User can Author a Gameboard (6b). Because Toolsets are location independent, Gameboards can beauthored anywhere a map is available. Once the Gameboard is authored itcan be interpreted again and again (6 c) (6 d).

FIG. 7 illustrates the Author Gameboard process. Using the GameboardEditor, a Gameboard is constructed new or initialized (7 a). A map isthen acquired externally (7 b), and the Gameboard is annotated by addingVirtual Effects (7 c) until the Gameboard Author is satisfied (7 d).Once the Gameboard Author is satisfied, the Gameboard is saved for lateruse (7 e).

FIG. 8 further breaks down the Initialize Gameboard process. After aGameboard is read from XML (8 a), the Gameboard Control is created (8 b)and given the Gameboard Map with the largest scale (8 c). The largestscale Gameboard Map is used to give the Gameboard Player a view of theentire game area. Each Virtual Effect is read (8 d), instantiated (8 e),images are sized for each Gameboard Map scale (8 f) and added to theGameboard (8 g).

In all embodiments of the game, the Gameboard map represents where thegame is to be played. For example, if a Gameboard Author wanted to playSidewalk Squirrel© within his or her locale, the Gameboard Map wouldencompass the neighborhood. The annotation process as well as theindividually specified map makes each game experience unique andcustomizable.

The example game, Sidewalk Squirrel© uses Microsoft's© MapPoint© toprovide Gameboard Maps within the Acquire External Map method (7 b).MapPoint© is available as a web service over the Internet. Besides mapimages, MapPoint© provides the northeast and southwest boundingcoordinates. The coordinates are represented in latitude and longitude.

FIG. 9 illustrates the detailed process of Acquiring an External Map.The process starts by entering a location represented as an address (9a) and calling the external service (9 b). If the address is found bythe external service, a center point represented in latitude andlongitude is returned (9 c). To retrieve an actual map (9 e), the centerpoint is used in subsequent calls to the service with the Gameboard'sdefault scale and desired map size (9 d). To change the game area (9 i),the map service is called again with altered scale or center point torespectively alter size or location (9 j).

The intent of this patent's process and method is to author andinterpret a location aware game. The game itself will be played orexperienced through moving around outdoors in the game area representedwithin the Gameboard. Because internet access is not always availableoutdoors, the map service is not called during the Interpret Gameboardstep. Maps are acquired upfront during the Author Gameboard step andmanaged within the Gameboard Map construct. Many Gameboard Maps can beassociated to the Gameboard itself. To represent large game areas, themap service may be called multiple times using different scales (9 g) (9h).

To make it easy to scroll and zoom when larger scales are represented,multiple maps are acquired and managed within the Gameboard havingvarying sizes and scale. For example, within FIG. 10 the default scaleis 6770. Since the device display is 1.5 inches tall by 1.1 inches wide(10 a), the default game area will be 1.5×6770 by 1.1×6770 or 846 by 621feet. To double the size of the game area, the scale can be eitherdoubled to 13440 keeping the display size constant or the size of themap can be doubled keeping the scale constant. To allow offlinescrolling and zooming, both the maps are acquired. The resulting firstmap is 3 by 2.2 inches with a game area of 1692 by 1242 feet with thedefault scale of 6770 (10 b). The second map is 1.5×1.1 inchesrepresenting the same game area and a doubled scale of 13540 (10 c). Tozoom in, the smaller scale map is used (10 d), and to zoom out, thelarger scale map is used (10 e). When the map size is larger than thedevice display for the map larger than the display (10 b), scrolling isused to view the game area by setting the map display offset (10 f) tothe horizontal and vertical scroll values (10 g and 10 h).

To present realistic Virtual Effect images, as the Gameboard is zoomedusing different map images, different Virtual Effect images are usedcorresponding to the map scale. These images are sized during the SizeImages for Map Scales step (8 f) of the Initialize Gameboard process(FIG. 8).

FIG. 11 further breaks down the Virtual Effect add and edit process ofGameboard Authoring. If the Virtual Effect is new, the desired type willbe selected (11 a). If the Virtual Effect exists, it will be selected(11 a). Within this sub process, a Virtual Effect's location isdesignated (11 b) and attributes are set (11 c). If the Virtual Effectis new it is added to the Gameboard. Designating the Virtual Effect'slocation is performed through selection of a point on the Gameboard'smap image. The selected point, represented in pixels (x and y) withinthe device specific Gameboard Control, is then translated to a latitudeand longitude location using the Gameboard's bounding Northeast (ne) andSouthwest(sw) coordinates within the following algorithm:Latitude=ne.latitude−y*absolutevalue((ne.latitude−sw.latitude)/displayheight)Longitude=sw.longitude+x*absolutevalue((ne.longitude−sw.longitude)/displaywidth)

FIG. 12 shows the Gameboard Control during game editing. Five of the sixVirtual Effect types are represented on top of the Gameboard Control (12a). Within Sidewalk Squirrel©, to add a Virtual Effect to the Gameboard,the Virtual Effect type is designated through a mouse click (12 b).Clicking on the Gameboard Control (12 c), the Virtual Effect's locationis designated. The x and y coordinates of the screen are then translatedto latitude and longitude coordinates using the above algorithm and heldby the Virtual Effect itself. After the location is designated, theVirtual Effect's attributes are set. FIG. 13 illustrates a dialog whereSidewalk Squirrel's© dog attributes are set. Within this example, theGameboard Author can designate the dog's speed (13 a).

By restricting the Gameboard Author to simply designating the locationand attribute values of the Virtual Effect, the Author Gameboard processis greatly simplified. Conversely, the Gameboard Author is restricted tothe creativity of the Toolset Creator for types and behavior of VirtualEffects.

DETAILED DESCRIPTION—INTERPRET GAMEBOARD

FIG. 14 illustrates the Interpret Gameboard process. Using the GameboardInterpreter, a Gameboard is initialized (14 a), a game timer isinstantiated (14 b), a location receiver is initialized (14 c), theGameboard Player is instantiated (14 d) and the game is played (14 e).The Gameboard Player is the Virtual Effect subtype whose movement andlocation is driven by the location receiver's coordinates. The sampleToolset, Sidewalk Squirrel©, implemented a GPS device as the locationreceiver. Using the GPS device's coordinates, the Player Virtual Effectbecomes a proxy within the game representing the actual GameboardPlayer.

This invention uses but does not address GPS. The example game, SidewalkSquirrel© utilizes StormSource Software's© GPS.NET© application toprovide connectivity to GPS receivers. During a game, GPS.NET©coordinates and levels of confidence are read into the Game itself. Inturn, the Game passes these coordinates to the Player Virtual Effect.FIG. 15 illustrates a Sidewalk Squirrel© Gameboard Control with VirtualEffects instantiated. The topmost Virtual Effect is the Player (thesquirrel) (15 a). In this example, the actual Gameboard Player (ahuman), is standing at the corner of Key Boulevard and North DanvilleStreet in Arlington, Va.

FIG. 8 further breaks down the Initialize Gameboard process. This is thesame process used during Gameboard Editing. After a Gameboard isinstantiated, the Gameboard Control is created and given the GameboardMap with the largest scale. The largest scale Gameboard Map is used togive the Gameboard Player a view of the entire game area. VirtualEffects are then read, instantiated and added to the Gameboard.

FIG. 16 further breaks down the Gameboard Interpreter's Play Gameprocess. Within this process, Virtual Effects are continuously (16 b 16g) evaluated for movement (16 c), interaction (16 d), appearance (16 e),and audio (16 f). To implement the cadence of Virtual Effect evaluationa device specific timer is used (16 a). This process continues until agame over condition is reached and the timer is disabled (16 h). Whileplaying, the actual Gameboard Player represented by the Player VirtualEffect is placed on the Gameboard with the other Virtual Effects. Overtime, the Player Virtual Effect interacts with the other Virtual Effectsby entering their zones.

During Sidewalk Squirrel©, the Play Game processes Virtual Effectsuniformly. However, since the Virtual Effects implement their behaviortraits differently, the game has a unique personality. For example, thedog Virtual Effect barks while attacking the Gameboard Player VirtualEffect. While attacking, the dog's image changes over time to give it arunning appearance. If the dog enters the Player's zone, the interactionremoves one of the three lives granted to the Player. Loss of all threelives evokes a game over condition and the timer stops. Unlike the dogVirtual Effect, acorns and bones are prizes. If the Player enters aprize Virtual Effect zone, the prize disappears (is acquired) and pointsare awarded. Another Virtual Effect, the finish line, is also immobile.Entering the finish line's zone allows the Player to end game a winnerwith remaining lives and points.

DETAILED DESCRIPTION—OTHER EMBODIMENTS

The primary embodiment of this process and method can be implemented asa single player game. FIG. 17 illustrates how a compiled Toolset (17 b)interacts with the operating system (17 a) and device interfaces (17 d,17 e, 17 f) on a small computing device for a single player. The Toolsetuses the mapping (17 e) and network interface (17 d) to retrieveexternal maps from the Internet (17 g). GPS interfacing software (17 f)is used to receive coordinates from an internal or external GPS device(17 c).

Another embodiment of this invention allows communication betweenmultiple players. This embodiment is illustrated in FIG. 18 and requiresGameboards and Virtual Effects to be synchronized across multipleexecuting Toolsets (18 a, 18 b) during Gameboard Interpretation. Thisalternative embodiment supports an expanded number of Toolsets and Gamethemes. For example, a Toolset Creator could enhance a game of hide andseek or sharks and minnows. In both these Toolset examples, playerscould receive hints to where other players are hiding.

This invention's process and method as defined use a square zonerepresented by horizontal and vertical bounds. Another embodiment coulduse any shape. For example, a zone could be represented as the areawithin a set of points or the area could be defined by an equation:x**2+2y**2.

Size used in this invention's example implementation (SidewalkSquirrel©) is represented as pixels. In other embodiments, size could berepresented in any unit of measure: feet, inches or meters. It isrequired though that size correlates to the actual size of the VirtualEffect image to give the Gameboard Player a realistic experience wheninteracting with the Virtual Effects within a game.

Visual display may not be required by some applications. For example,tours might completely rely on audio Virtual Effects.

Wizards may aid in the creation of Virtual Effects on a Gameboard. Forexample, following input from a Game Author, a Wizard could beinstructed to place Virtual Effects on all street corners. Likewise, aWizard could be used to generate dog Virtual Effects in SidewalkSquirrel© during Gameboard annotation or interpretation.

An unlimited variety of Toolsets (Games and Virtual Effects) could becreated as other embodiments of this invention. The complexity oftrigger conditions and effects is left to the imagination of the ToolsetCreator. To follow this invention's process and method, the VirtualEffect must implement methods capturing: movement, interaction,appearance and audio. Defining these traits and corresponding methodsallows the Gameboard Editor and Gameboard Interpreter to process VirtualEffects generically. That is, a newly created Virtual Effect can beprocessed in the same manor as the defined dog or bone from SidewalkSquirrel©. Following are a few other example Toolsets and theirrespective Virtual Effects:

-   -   Scavenger Hunt    -   Task—Represented as a “check” symbol. Instruct player to perform        a location specific task or collect an item for points.    -   Question—Represented as a question mark. Ask player location        specific question. For example, ask hot dog vender for his        middle name.    -   Golf Course Guide    -   Tee—Represented as a green rectangle. Give course statistics and        strategies.    -   Green—Represented as an oval. Provide green undulations and        speed tips.    -   Walking Tour    -   Trivia—Provide location specific trivia. For example, “Your        father kissed your mother for the first time at this very spot        on Sep. 3, 1968”.    -   Overlook—Represented as an eye. Provide details of significance        and historical pictures of overlook.    -   Monument—Represented as a column. Provide dates of construction        and pictures of historical events

Whether in its primary or alternative embodiments, this invention allowsfor the implementation of new location aware game types for smallcomputing devices using location receivers. The Toolsets created usingthis process and method will promote active rather than sedentaryentertainment ultimately promoting more healthy lifestyles.

What is claimed is:
 1. Computer system for creating and playing locationaware games comprising: computing device with display; plurality ofvirtual effects having size and interaction rules; a user interface topermit a user to select and view a gameboard based off of an inputtedlocation and assign virtual effects to locations within the gameboard; astorage means for storing said gameboard and said plurality of virtualeffects; a second user interface to permit a user to view said gameboardand said plurality of virtual effects while playing a game; a controllerto control the location of one or more virtual effects during game playbased on input from at least one of the following: a computer mouse, ascreen stylus and a location receiver; a timing device used by thecontroller to establish cadence of play.
 2. The computer system of claim1 wherein said computing device further comprising audio delivery. 3.The computer system of claim 2 wherein said gameboard further comprisinga center represented as longitude and latitude, bounding coordinatesrepresented as longitude and latitude, a default scale representing aratio of real world measurements to that of a map image and a pluralityof map images each with corresponding scale.
 4. The computer system ofclaim 3 wherein said virtual effect further comprising a real worldlocation represented in longitude and latitude, a plurality of images, aplurality of audio files, movement rules, appearance selection rules andaudio selection rules.
 5. The computer system of claim 4 wherein saiduser interfaces permit a user to change scale of said gameboard bychanging gameboard map image to that of desired scale and changingplurality of virtual effect images to that of desired scale.
 6. Thecomputer system of claim 5 wherein said user interfaces permit a user tochange the offset of gameboard map relative to user view to giveappearance of scrolling when map image is larger than computing devicedisplay.
 7. Computer system for creating and playing location awaregames comprising: computing device with audio delivery; plurality ofvirtual effects having size and interaction rules; a user interface topermit a user to select and view a gameboard based off of an inputtedlocation and assign virtual effects to locations within the gameboard; astorage means for storing said gameboard and said plurality of virtualeffects; a controller to control the location of one or more virtualeffects during game play based on input from a location receiver; atiming device used by the controller to establish cadence of play. 8.The computer system of claim 7 wherein said gameboard further comprisinga center represented as longitude and latitude, bounding coordinatesrepresented as longitude and latitude, a default scale representing aratio of real world measurements to that of a map image and a pluralityof map images each with corresponding scale.
 9. The computer system ofclaim 8 wherein said virtual effect further comprising a real worldlocation represented in longitude and latitude, a plurality of audiofiles, movement rules and audio selection rules.
 10. Method forcreating, editing and playing location aware games comprising: pluralityof virtual effects having size and interaction rules; a method forcreating and editing a gameboard based off of an inputted location andassign virtual effects to locations within the gameboard; a method forstoring said gameboard and said plurality of virtual effects; a methodfor playing user interface to permit a user to view said gameboard andsaid plurality of virtual effects while playing a game; a controller tocontrol the location of one or more virtual effects during game playbased on input from at least one of the following: a computer mouse, ascreen stylus and a location receiver; a timing device used by thecontroller to establish cadence of play.
 11. The method of claim 10wherein said gameboard further comprising a center represented aslongitude and latitude, bounding coordinates represented as longitudeand latitude, a default scale representing a ratio of real worldmeasurements to that of a map image and a plurality of map images eachwith corresponding scale.
 12. The method of claim 11 wherein saidvirtual effect further comprising a real world location represented inlongitude and latitude, a plurality of images, a plurality of audiofiles, movement rules, appearance selection rules and audio selectionrules.
 13. The method of claim 12 wherein said gameboard is initializedby reading a file containing XML representing gameboard, instantiatinggameboard, reading XML representing said plurality of maps whileinstantiating each map and adding to gameboard, reading XML representingsaid plurality of virtual effects while instantiating each virtualeffect and sizing each virtual effect image to match plurality of scalescontained within each of the plurality of gameboard maps and adding saidvirtual effect to gameboard.
 14. The method of claim 13 wherein the saidmethod of creating and editing gameboard further comprising saidinitialize gameboard method, an acquire external map method, an addvirtual effects method, an edit virtual effects method and a savegameboard method comprising representing said gameboard, said pluralityof maps and said plurality of virtual effects as XML and writing XML toa file.
 15. The method of claim 14 wherein said method of adding newvirtual effect comprising selecting virtual effect type, designatingvirtual effect location on gameboard image and setting virtual effectattribute values and wherein said method of editing existing virtualeffects comprising selecting existing virtual effect, designating newlocation on gameboard image and changing virtual effect attributevalues.
 16. The method of claim 15 wherein designating virtual effectlocation is performed through selection of point on the gameboard mapcontrol represented in pixels (x and y) and translating to longitude andlatitude using the gameboard northeast(ne) and southwest(sw) boundingcoordinates, device display height in pixels and device display width inpixels in the algorithm:Latitude=ne.latitude−y*absolute value((ne.latitude−sw.latitude)/displayheight)Longitude=sw.longitude+x*absolute value((ne.longitude−sw.longitude)/displaywidth)
 16. The method of claim 12wherein said virtual effects have subtypes that have unique attributes,an overriding movement method, an overriding intersection method, anoverriding appearance method, a unique plurality of appearance images,an overriding audio method and unique plurality of audio files.
 17. Themethod of claim 16 wherein said movement evaluation comprisingcalculating next position of said virtual effect depending on conditionsas defined in overriding movement method as defined in virtual effectsubtype.
 18. The method of claim 17 wherein said intersection evaluationcomprising an iteration through plurality of virtual effects andcomparing bounding coordinates for overlapping points where intersectiontriggers events depending on conditions as defined in said intersectionmethod as defined in virtual effect subtype.
 19. The method of claim 18wherein said appearance method comprising of designating said virtualeffect image depending on conditions as defined in overriding appearancemethod as defined in virtual effect subtype.
 20. The method of claim 19wherein said audio method comprising of selecting audio file dependingon conditions defined within overriding audio method as defined invirtual effect subtype where selected audio file is interpreted ondevice specific audio driver.
 21. The method of claim 20 wherein saidmethod of interpreting gameboard comprising said initialize gameboardmethod, instantiating said timer, connecting to location receiver,instantiating said player virtual effect and play game method.
 22. Themethod of claim 21 wherein said play game method further comprisingstarting said timing device, continuously evaluating plurality ofvirtual effects using timing device to set evaluation cadence until gameover condition is reached where evaluation consists of executing saidvirtual effect subtype overriding method for movement, executing saidvirtual effect subtype overriding method for interaction, executing saidvirtual effect subtype overriding method for appearance and executingsaid virtual effect subtype overriding method for audio.